Certain image processing devices, such as printers, displays, image rendering systems and output files may use a different color space than other image processing devices such as a color driver for a computer system, camera, display or input graphics file. For example, a cyan, magenta, yellow, and black (CMYK) color space is used for a color printer. However, a red, green and blue (RGB) color space may be used for certain graphics files. Accordingly, a color transformation is needed for converting the RGB color space into the CMYK color space.
One method of color transformation uses a look-up table to store a plurality of color values associated with the CMYK color space. A conversion between the RGB color space and the CMYK color space is performed by indexing the CMYK values in the look-up table using addresses corresponding with RGB color values, one look-up table per output color.
A large amount of memory is required for the look-up table. For example, a 24-bit RGB color system may use 8 bits for red color values, 8 bits for green color values and 8 bits for blue color values. This 24-bit RGB color system can require a table size of 16 MegaBytes (MBs) or larger per output color.
To reduce memory requirements, some color transformation devices combine interpolation with the color mapping process. The hybrid transformation process first identifies a set of vertices that surround or neighbor an input color point in the color space. A value for the second color space is then derived by interpolating the identified vertices to the relative position of the input color point. However, this interpolation process is slow and computationally intensive.
An interpolation scheme uses cubic subdivision to index a position of an input color value in a color space relative to neighboring vertices. The indexed position of the input color value is expanded and the neighboring vertices are combined together according to the expanded index to generate an output color value.
The foregoing and other objects, features and advantages of the invention will become more readily apparent from the following detailed description of a preferred embodiment of the invention, which proceeds with reference to the accompanying drawings.